1. Field of the Invention
The present invention relates to computer networks and more particularly to a method of locating a resource in such a network without necessarily requiring verification of the location and characteristics of the resource.
2. Prior Art
A data communications network can generally be defined as a collection of network nodes and end nodes interconnected through communications links. A network node is a data processing system that provides certain functions within the network, such as routing of messages between itself and neighboring nodes, selection of routes for messages to be transmitted between two nodes and furnishing of directory services to served end nodes. The links between nodes may be permanent communications links such as conventional cable connections or links that are enabled only when needed, such as dial-up connections through public or private telephone systems. End nodes are exemplified by devices such as display terminals, intelligent workstations and the like, which do not provide routing or route selection or directory services to other nodes in the network. End nodes may include processors that do not perform services of the kinds performed by network nodes. Collectively, the network nodes, the end nodes and the links between the nodes are referred to as network resources. The physical configuration and characteristics of the various nodes and links are said to be the topology of the network.
Each of the nodes contains one or more network addressable units, each containing a resource that can be a source or target for communications directed through the network. The following description uses the term logical unit or LU to identify the interface between an end user located at a network addressable unit and the remainder of the network. The term end user encompasses both human users and computer programs being executed at the network addressable unit.
To select a route between any two resources at different logical units in a network or to set up a logical connection or session between those two logical units requires that the node responsible for route selection or session establishment have information about both the resources. The necessary information includes the location and characteristics of each resource.
It is, at least theoretically, possible to set up a network in which information about every new, deleted or changed resource is communicated to a single network operator. Such an operator would be responsible for compiling all such information and communicating it to every node which performs a route selection or session establishment function. Such an approach might work for a small, relatively static (i.e., unchanging) network.
However, few data communications network can be characterized as either small or static. Most networks are both large and extremely dynamic in that resources are often moved, added, deleted or assume new characteristics (e.g., available/not available) while remaining in the network.
The volume and frequency of changes in resources in a typical data communications network could overwhelm a single network operator. Delays in receiving, compiling and distributing the resource change information could result in futile attempts by network nodes to select routes or set up sessions based on outdated information received from the single network operator.
A process for permitting a network node to locate a target resource in a data communications network is described in U.S. Pat. No. 4,914,571, issued Apr. 3, 1990, and assigned to the assignee of the present invention. According to the teachings of that patent, a network node responsible for setting up a session between a source logical unit and a target logical unit can perform a LOCATE search to dynamically locate the target and acquire needed information about the characteristics of the target. The location and characteristics are used by the network node in setting up the session between the source and target logical units.
Further details of the patented process are incorporated into the technical description of the present invention. It is important to note that the LOCATE process taught in the patent requires that every LOCATE search be propagated fully to the node containing the target logical unit, regardless whether an intervening network node possesses cached information about the target resource. A full LOCATE search has the advantage that it will result in current resource location/characteristic information being retrieved as a result of every search.
However, performing a full LOCATE search in every instance is not without its disadvantages. Waiting for a full LOCATE search to be completed can delay the establishment of sessions. Moreover, full LOCATE searches increase network traffic "overhead" since those searches take network time that could otherwise be devoted to the transfer of data between end users.